
package ConexionBD;
import Vehiculo.carro;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Date;
import javax.swing.JOptionPane;

public class VehiculoBD {
    
    
     public void Insertavehiculo(Connection LaConexion, carro Elcarro){

        if(LaConexion==null){
            JOptionPane.showMessageDialog(null, "No se efectua nada en la Base de Datos"
                    + "\nError con la conexion a la BD", "Error en la Base de Datos", JOptionPane.ERROR_MESSAGE);
            return;
        }

        if(Elcarro==null){
           JOptionPane.showMessageDialog(null, "No se efectua nada en la Base de Datos"
                    + "\nError con el Mueble", "Error en la Base de Datos", JOptionPane.ERROR_MESSAGE);
            return;
        }

        try {
            
            String OrdenSQL = "";

            OrdenSQL+="INSERT INTO vehiculo(idcarro,modelo,tipovehiculo,color,serial,añoconstruccion,"
                    + "aceitemotor,refrigerante,ligafreno,aceitecaja,aceitedireccion,gasolina,marcabateria,"
                    + "tipodireccion,litromotor,kmultimocambioaceite,tiporing,kilometrototal,presioncaucho,"
                    + "ncilindros,tipobateria,idusuario) VALUES (";
            
            OrdenSQL+="'"+Elcarro.getIdCarro()+"',";
            OrdenSQL+="'"+Elcarro.getModelo()+"',";
            OrdenSQL+="'"+Elcarro.gettipoVehiculo()+"',";
            OrdenSQL+="'"+Elcarro.getcolor()+"',";
            OrdenSQL+="'"+Elcarro.getSerial()+"',";
            OrdenSQL+="'"+Elcarro.getAño()+"',";
            OrdenSQL+="'"+Elcarro.getAceiteMotor()+"',";
            OrdenSQL+="'"+Elcarro.getRefrigerante()+"',";
            OrdenSQL+="'"+Elcarro.getLigaFreno()+"',";
            OrdenSQL+="'"+Elcarro.getAceiteCaja()+"',";
            OrdenSQL+="'"+Elcarro.getAceiteDireccion()+"',";
            OrdenSQL+="'"+Elcarro.getGasolina()+"',";
            OrdenSQL+="'"+Elcarro.getMarcaBateria()+"',";
            OrdenSQL+="'"+Elcarro.gettipoDireccion()+"',"; 
            OrdenSQL+="'"+Elcarro.getLitros()+"',";
            OrdenSQL+="'"+Elcarro.getUltimocambioAceite()+"',";
            OrdenSQL+="'"+Elcarro.getTipoRing()+"',";
            OrdenSQL+="'"+Elcarro.getKilometrajeTotal()+"',";
            OrdenSQL+="'"+Elcarro.getPresionCauchos()+"',";
            OrdenSQL+="'"+Elcarro.getNcilindros()+"',";
            OrdenSQL+="'"+Elcarro.getLibreMantenimient()+"',";
            OrdenSQL+="'"+Elcarro.getIdusuario()+"')";

            
            Statement EjecutaOrdenSQL = LaConexion.createStatement();
            EjecutaOrdenSQL.executeUpdate(OrdenSQL);
            JOptionPane.showMessageDialog(null, "Vehiculo registrado Correctamente....");
            
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, ex, "Error en la Base de datos", JOptionPane.ERROR_MESSAGE);
        }

     }
     
     public carro ObtieneVehiculo(Connection LaConexion, String idusuario){
         
        java.sql.Date año;
        
        try {
            Statement Sta = LaConexion.createStatement();
            ResultSet result = Sta.executeQuery("SELECT * FROM vehiculo WHERE idusuario='" + idusuario + "'");
            result.next();                     
     
 String  Modelo,tipovehiculo,color, serial,aceiteM,refrigerante,ligafreno,aceiteC,aceiteD,gasolina
        ,MarcaB,tipoD,tipR, cedulaUsuario;       
 int idCarro, ncilindros;
 String LibreM;
 float litroMotor,  kmCambioaceite,kilometroTotal, PresionC;           
 
 
idCarro = result.getInt("idcarro"); 
Modelo = result.getString("modelo");
tipovehiculo = result.getString("tipovehiculo");
color = result.getString("color");
serial= result.getString("serial");
año = result.getDate("añoconstruccion");
aceiteM = result.getString("aceitemotor");
refrigerante = result.getString("refrigerante");      
ligafreno =result.getString("ligafreno");
aceiteC = result.getString("aceitecaja");
aceiteD = result.getString("aceitedireccion");
gasolina = result.getString("gasolina");
MarcaB = result.getString("marcabateria");
tipoD = result.getString("tipodireccion");
tipR = result.getString("tiporing");
litroMotor = result.getFloat("litromotor");
kmCambioaceite = result.getFloat("kmultimocambioaceite");
kilometroTotal = result.getFloat("kilometrototal");
PresionC = result.getFloat("presioncaucho");
ncilindros = result.getInt("ncilindros");
LibreM = result.getString("tipobateria");
cedulaUsuario = result.getString("idusuario");
                 
            
carro Elcarro = new carro(Modelo, tipovehiculo,color, serial,   
                          año,idCarro,aceiteM,refrigerante,ligafreno,aceiteC, 
                          aceiteD,gasolina,MarcaB,tipoD,litroMotor, 
                          kmCambioaceite,tipR,kilometroTotal,PresionC,
                          ncilindros,LibreM,cedulaUsuario);

 return Elcarro;
 
 
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "ObtieneCarro: "+ex, "Error en la Base de datos", JOptionPane.ERROR_MESSAGE);
        }
        return null;

    }
     
          
   public boolean ExisteCarro(Connection LaConexion, String ci){

        try{
        String OrdenSQL = "";
       
        OrdenSQL+="SELECT idcarro FROM vehiculo WHERE idusuario=" + ci;
        

        Statement EjecutaOrdenSQL = LaConexion.createStatement();
        ResultSet rs2 = EjecutaOrdenSQL.executeQuery(OrdenSQL);

            if(rs2.next())
                return true;

            else return false;
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, ex, "Error en la Base de datos", JOptionPane.ERROR_MESSAGE);
            return false;
        }


    }   
     
        
         
}
